﻿// This class is "generated" and will be overwritten.
// Your customizations should be made in StatusRecord.cs

using System;
using System.Collections;
using System.Data.SqlTypes;
using BaseClasses;
using BaseClasses.Data;
using BaseClasses.Data.SqlProvider;

namespace BUGLOG.Business
{

/// <summary>
/// The generated superclass for the <see cref="StatusRecord"></see> class.
/// </summary>
/// <remarks>
/// This class is not intended to be instantiated directly.  To obtain an instance of this class, 
/// use the methods of the <see cref="StatusTable"></see> class.
/// </remarks>
/// <seealso cref="StatusTable"></seealso>
/// <seealso cref="StatusRecord"></seealso>
public class BaseStatusRecord : PrimaryKeyRecord
{

	public readonly static StatusTable TableUtils = StatusTable.Instance;

	// Constructors
 
	protected BaseStatusRecord() : base(TableUtils)
	{
	}

	protected BaseStatusRecord(PrimaryKeyRecord record) : base(record, TableUtils)
	{
	}







#region "Convenience methods to get/set values of fields"

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.StatusID field.
	/// </summary>
	public ColumnValue GetStatusIDValue()
	{
		return this.GetValue(TableUtils.StatusIDColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.StatusID field.
	/// </summary>
	public Int32 GetStatusIDFieldValue()
	{
		return this.GetValue(TableUtils.StatusIDColumn).ToInt32();
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.Status field.
	/// </summary>
	public ColumnValue GetStatusValue()
	{
		return this.GetValue(TableUtils.StatusColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.Status field.
	/// </summary>
	public string GetStatusFieldValue()
	{
		return this.GetValue(TableUtils.StatusColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.Status field.
	/// </summary>
	public void SetStatusFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.StatusColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.Status field.
	/// </summary>
	public void SetStatusFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.StatusColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.StatusDescription field.
	/// </summary>
	public ColumnValue GetStatusDescriptionValue()
	{
		return this.GetValue(TableUtils.StatusDescriptionColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Status_.StatusDescription field.
	/// </summary>
	public string GetStatusDescriptionFieldValue()
	{
		return this.GetValue(TableUtils.StatusDescriptionColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.StatusDescription field.
	/// </summary>
	public void SetStatusDescriptionFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.StatusDescriptionColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.StatusDescription field.
	/// </summary>
	public void SetStatusDescriptionFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.StatusDescriptionColumn);
	}


#endregion

#region "Convenience methods to get field names"

	/// <summary>
	/// This is a property that provides direct access to the value of the record's Status_.StatusID field.
	/// </summary>
	public Int32 StatusID
	{
		get
		{
			return this.GetValue(TableUtils.StatusIDColumn).ToInt32();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.StatusIDColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool StatusIDSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.StatusIDColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.StatusID field.
	/// </summary>
	public string StatusIDDefault
	{
		get
		{
			return TableUtils.StatusIDColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Status_.Status field.
	/// </summary>
	public string Status
	{
		get
		{
			return this.GetValue(TableUtils.StatusColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.StatusColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool StatusSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.StatusColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.Status field.
	/// </summary>
	public string StatusDefault
	{
		get
		{
			return TableUtils.StatusColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Status_.StatusDescription field.
	/// </summary>
	public string StatusDescription
	{
		get
		{
			return this.GetValue(TableUtils.StatusDescriptionColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.StatusDescriptionColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool StatusDescriptionSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.StatusDescriptionColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Status_.StatusDescription field.
	/// </summary>
	public string StatusDescriptionDefault
	{
		get
		{
			return TableUtils.StatusDescriptionColumn.DefaultValue;
		}
	}


#endregion
}

}
